<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
    <script>
/*         思路：查了一下，哥德巴赫猜想是从大于2的开始的，我开始想了负偶数怎么办
        那么从大于2的情况开始，如果输入一个偶数n，那开始循环，从2开始，另一个余数是n-2,
        如果n-2是质数，则成立。然后循环下去，3和n-3,5和n-5,7和n-7，直到将小于n的质数证明完毕。 */
        var n = parseInt(prompt("请输入一个大于2偶数"));
        function fun (a) {
            // 循环求2到n的数
            for (var i = 2 ; i < n-1 ; i++) {
                // 构造一个判断这个数是不是质数的函数
                function zhi (x) {
                    var sum = 0;                
                    for (var j = 1; j <= x; j++){
                        // 判断有几个约数
                        if(x % j == 0){
                            sum++;
                        }
                    }
                    // 如果有两个约数，则是质数
                    if(sum == 2){
                        return 1;
                    }else {
                        return 0;
                    }
                }
                // if (zhi(i) == zhi(n-i) && (zhi(i) == 1 && zhi(n-i) == 1)) {
                //     console.log("猜想成立");
                // }else {
                //     console.log("猜想不成立");
                // }
            }
            // 建立一个数组判断猜想是否成立，因为返回的是1和0，我们将第i个质数和第n-i个质数放进数组，这两个是相邻的，如果相邻的这两个数相同且为1，
            // 表示猜想成立，如果遇到的第一个不是这样，则继续往下找，如果找到倒数第二个还没找到，就说明猜想不成立
            var arr = [];
            for (var i = 2; i < n-1 ; i++) {
                // 将从i到n-i的这些质数分别放入数组
                arr.push(zhi(i));
                arr.push(zhi(n-i));
            }
            // 遍历这个数组，每两个为一组
            for (var m = 0; m < arr.length ; m += 2) {
                // 如果出现相邻的1，表示猜想成立
                if ((arr[m] == 1 && arr[m+1] == 1)) {
                    console.log("猜想成立");
                    break;
                    // 如果不是这样，就继续找，如果找不到输出猜想不成立
                }else if (n < arr.length-2){
                    continue;                    
                }else {
                    console.log("猜想不成立");
                    break;
                }
            }
            // console.log(arr);
        }
        fun(n);
    </script>
</head>
<body>
    <p>6. 验证哥德巴赫猜想。一个偶数可以拆分成两个质数之和。</p>
    哥德巴赫猜想是想
    哥德巴赫猜想说明任何大于二的偶数都可以写为两个质数之和，但尚未有人能证明这个猜想。
</body>
</html>